home *** CD-ROM | disk | FTP | other *** search
/ Visual Cafe 3 / Visual Cafe 3.ISO / Vcafe / Source.bin / WizardInterface.java < prev    next >
Text File  |  1998-08-21  |  5KB  |  193 lines

  1. /*
  2.  * WizardInterface.java
  3.  */
  4.  
  5. package symantec.itools.awt;
  6.  
  7. import java.awt.Component;
  8.  
  9. /**
  10.  * The Wizard API.
  11.  * A Wizard is a dialog that leads the user through a series of steps in order
  12.  * to accomplish some task.
  13.  *
  14.  * @see symantec.itools.awt.Wizard
  15.  */
  16. public interface WizardInterface
  17. {
  18.     // Properties
  19.  
  20.     /**
  21.      * Gets the number of pages in the Wizard.
  22.      * @return the number of pages currently in the Wizard
  23.      */
  24.     public int getPageCount();
  25.     /**
  26.      * Returns the zero-relative index of the currently selected page.
  27.      * @return the currently selected page or -1 if none are shown
  28.      */
  29.     public int getSelectedIndex();
  30.     /**
  31.      * Gets the component for the page at the given index.
  32.      * @param index the zero-relative page index
  33.      * @return returns the component associated with the page
  34.      * @exception ArrayIndexOutOfBoundsException
  35.      * if the index is invalid
  36.      */
  37.     public Component getComponentAt(int index);
  38.  
  39.     // Automated navigation control
  40.  
  41.     /**
  42.      * Sets the index of the page to show when goPrevious is called.
  43.      * @param index the zero-relative page index
  44.      *
  45.      * @see #setNextPageIndex
  46.      * @see #goPrevious
  47.      * @see WizardController
  48.      * @see SimpleWizardController
  49.      */
  50.     public void setPreviousPageIndex(int index);
  51.     /**
  52.      * Sets the index of the page to show when goNext is called.
  53.      * @param index the zero-relative page index
  54.      *
  55.      * @see #setPreviousPageIndex
  56.      * @see #goNext
  57.      * @see WizardController
  58.      * @see SimpleWizardController
  59.      */
  60.     public void setNextPageIndex(int index);
  61.  
  62.     /**
  63.      * Sets the page to show when goPrevious is called.
  64.      *
  65.      * @see #setNextPageIndex
  66.      * @see #goPrevious
  67.      * @see WizardController
  68.      * @see SimpleWizardController
  69.      */
  70.     public void setPreviousPage(Component comp);
  71.     /**
  72.      * Sets the page to show when goNext is called.
  73.      *
  74.      * @see #setPreviousPageIndex
  75.      * @see #goNext
  76.      * @see WizardController
  77.      * @see SimpleWizardController
  78.      */
  79.     public void setNextPage(Component comp);
  80.  
  81.     // Navigation bar state
  82.  
  83.     /**
  84.      * Sets a default status for the Previous, Next and Finish buttons.
  85.      *
  86.      * @see #setPreviousEnabled
  87.      * @see #setNextEnabled
  88.      * @see #setFinishEnabled
  89.      * @see #setCancelEnabled
  90.      * @see #setHelpEnabled
  91.      */
  92.     public void updateButtonsState();
  93.  
  94.     /**
  95.      * Enables or disables the Previous button.
  96.      * @param status <code>true</code> to enable the button
  97.      *
  98.      * @see #setNextEnabled
  99.      * @see #setFinishEnabled
  100.      * @see #setCancelEnabled
  101.      * @see #setHelpEnabled
  102.      */
  103.     public void setPreviousEnabled(boolean status);
  104.     /**
  105.      * Enables or disables the Next button.
  106.      * @param status <code>true</code> to enable the button
  107.      *
  108.      * @see #setPreviousEnabled
  109.      * @see #setFinishEnabled
  110.      * @see #setCancelEnabled
  111.      * @see #setHelpEnabled
  112.      */
  113.     public void setNextEnabled(boolean status);
  114.     /**
  115.      * Enables or disables the Finish button.
  116.      * @param status <code>true</code> to enable the button
  117.      *
  118.      * @see #setPreviousEnabled
  119.      * @see #setNextEnabled
  120.      * @see #setCancelEnabled
  121.      * @see #setHelpEnabled
  122.      */
  123.     public void setFinishEnabled(boolean status);
  124.     /**
  125.      * Enables or disables the Cancel button.
  126.      * @param status <code>true</code> to enable the button
  127.      *
  128.      * @see #setPreviousEnabled
  129.      * @see #setNextEnabled
  130.      * @see #setFinishEnabled
  131.      * @see #setHelpEnabled
  132.      */
  133.     public void setCancelEnabled(boolean status);
  134.     /**
  135.      * Enables or disables the Help button.
  136.      * @param status <code>true</code> to enable the button
  137.      *
  138.      * @see #setPreviousEnabled
  139.      * @see #setNextEnabled
  140.      * @see #setFinishEnabled
  141.      * @see #setCancelEnabled
  142.      */
  143.     public void setHelpEnabled(boolean status);
  144.  
  145.     // Actions
  146.  
  147.     /**
  148.      * Go to the previous page.
  149.      * If a page has been selected with setPreviousPage it will be used.
  150.      * If a page index has been selected with setPreviousPageIndex it will be
  151.      * used unless a page has been specified. The chain information will be
  152.      * reset.
  153.      *
  154.      * @see #goNext
  155.      * @see #setPreviousPage
  156.      * @see #setPreviousPageIndex
  157.      */
  158.     public void goPrevious();
  159.     /**
  160.      * Go to the next page.
  161.      * If a page has been selected with setNextPage it will be used.
  162.      * If a page index has been selected with setNextPageIndex it will be
  163.      * used unless a page has been specified. The chain information will be
  164.      * reset.
  165.      *
  166.      * @see #goPrevious
  167.      * @see #setNextPage
  168.      * @see #setNextPageIndex
  169.      */
  170.     public void goNext();
  171.     /**
  172.      * Performs the actions needed when the Finish button is pressed.
  173.      *
  174.      * @see #doCancel
  175.      * @see #doHelp
  176.      */
  177.     public void doFinish();
  178.     /**
  179.      * Performs the actions needed when the Cancel button is pressed.
  180.      *
  181.      * @see #doFinish
  182.      * @see #doHelp
  183.      */
  184.     public void doCancel();
  185.     /**
  186.      * Performs the actions needed when the Help button is pressed.
  187.      *
  188.      * @see #doFinish
  189.      * @see #doCancel
  190.      */
  191.     public void doHelp();
  192. }
  193.